<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>CANopenNode: 301/CO_HBconsumer.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">CANopenNode
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('CO__HBconsumer_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">CO_HBconsumer.h File Reference<div class="ingroups"><a class="el" href="group__CO__CANopen__301.html">CANopen_301</a> &raquo; <a class="el" href="group__CO__HBconsumer.html">Heartbeat consumer</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>CANopen Heartbeat consumer protocol.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="CO__driver_8h_source.html">301/CO_driver.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="CO__ODinterface_8h_source.html">301/CO_ODinterface.h</a>&quot;</code><br />
</div>
<p><a href="CO__HBconsumer_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structCO__HBconsNode__t.html">CO_HBconsNode_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">One monitored node inside <a class="el" href="structCO__HBconsumer__t.html" title="Heartbeat consumer object.">CO_HBconsumer_t</a>.  <a href="structCO__HBconsNode__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Heartbeat consumer object.  <a href="structCO__HBconsumer__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga7658e41b7c045b7b612e4ef8a2b663f3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga7658e41b7c045b7b612e4ef8a2b663f3">CO_HBconsumer_state_t</a> { <a class="el" href="group__CO__HBconsumer.html#gga7658e41b7c045b7b612e4ef8a2b663f3a4c481c1ba58fb71b9870e8b355351211">CO_HBconsumer_UNCONFIGURED</a> = 0x00U, 
<a class="el" href="group__CO__HBconsumer.html#gga7658e41b7c045b7b612e4ef8a2b663f3af36bc5f46fd11044dc2d1d995ad8f28b">CO_HBconsumer_UNKNOWN</a> = 0x01U, 
<a class="el" href="group__CO__HBconsumer.html#gga7658e41b7c045b7b612e4ef8a2b663f3ad80c78b38e6d28927bf3d1b1464b36e9">CO_HBconsumer_ACTIVE</a> = 0x02U, 
<a class="el" href="group__CO__HBconsumer.html#gga7658e41b7c045b7b612e4ef8a2b663f3a8a7ac49e5c809994ee65f365a7a75f22">CO_HBconsumer_TIMEOUT</a> = 0x03U
 }</td></tr>
<tr class="memdesc:ga7658e41b7c045b7b612e4ef8a2b663f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Heartbeat state of a node.  <a href="group__CO__HBconsumer.html#ga7658e41b7c045b7b612e4ef8a2b663f3">More...</a><br /></td></tr>
<tr class="separator:ga7658e41b7c045b7b612e4ef8a2b663f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga6114ea2d29843d847dbf45f39120e114"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__CO__driver.html#ga1cb2d3466eb0c6d267f3b5ff1a0d9532">CO_ReturnError_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga6114ea2d29843d847dbf45f39120e114">CO_HBconsumer_init</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="structCO__EM__t.html">CO_EM_t</a> *em, <a class="el" href="structCO__SDOserver__t.html">CO_SDOserver_t</a> *SDO, const <a class="el" href="group__CO__dataTypes.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> HBconsTime[], <a class="el" href="structCO__HBconsNode__t.html">CO_HBconsNode_t</a> monitoredNodes[], <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> numberOfMonitoredNodes, <a class="el" href="structCO__CANmodule__t.html">CO_CANmodule_t</a> *CANdevRx, <a class="el" href="group__CO__dataTypes.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> CANdevRxIdxStart)</td></tr>
<tr class="memdesc:ga6114ea2d29843d847dbf45f39120e114"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Heartbeat consumer object.  <a href="group__CO__HBconsumer.html#ga6114ea2d29843d847dbf45f39120e114">More...</a><br /></td></tr>
<tr class="separator:ga6114ea2d29843d847dbf45f39120e114"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf4bfa2bbd2b7d70f25b6bf173932170a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__CO__driver.html#ga1cb2d3466eb0c6d267f3b5ff1a0d9532">CO_ReturnError_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#gaf4bfa2bbd2b7d70f25b6bf173932170a">CO_HBconsumer_initEntry</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> nodeId, <a class="el" href="group__CO__dataTypes.html#ga1f1825b69244eb3ad2c7165ddc99c956">uint16_t</a> consumerTime_ms)</td></tr>
<tr class="memdesc:gaf4bfa2bbd2b7d70f25b6bf173932170a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize one Heartbeat consumer entry.  <a href="group__CO__HBconsumer.html#gaf4bfa2bbd2b7d70f25b6bf173932170a">More...</a><br /></td></tr>
<tr class="separator:gaf4bfa2bbd2b7d70f25b6bf173932170a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2faa596dcebbec8f486788a791d638be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga2faa596dcebbec8f486788a791d638be">CO_HBconsumer_initCallbackPre</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, void *object, void(*pFunctSignal)(void *object))</td></tr>
<tr class="memdesc:ga2faa596dcebbec8f486788a791d638be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Heartbeat consumer callback function.  <a href="group__CO__HBconsumer.html#ga2faa596dcebbec8f486788a791d638be">More...</a><br /></td></tr>
<tr class="separator:ga2faa596dcebbec8f486788a791d638be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf6cde91423fe90950ec176b1ae7fe44e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#gaf6cde91423fe90950ec176b1ae7fe44e">CO_HBconsumer_initCallbackNmtChanged</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, void *object, void(*pFunctSignal)(<a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> nodeId, <a class="el" href="group__CO__NMT__Heartbeat.html#ga1e8c2a6c0fd4a33183503d25a7c6d744">CO_NMT_internalState_t</a> state, void *object))</td></tr>
<tr class="memdesc:gaf6cde91423fe90950ec176b1ae7fe44e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Heartbeat consumer NMT changed callback function.  <a href="group__CO__HBconsumer.html#gaf6cde91423fe90950ec176b1ae7fe44e">More...</a><br /></td></tr>
<tr class="separator:gaf6cde91423fe90950ec176b1ae7fe44e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6c9bd0df815428719b9f9429ed4476a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga6c9bd0df815428719b9f9429ed4476a9">CO_HBconsumer_initCallbackHeartbeatStarted</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, void *object, void(*pFunctSignal)(<a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> nodeId, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, void *object))</td></tr>
<tr class="memdesc:ga6c9bd0df815428719b9f9429ed4476a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Heartbeat consumer started callback function.  <a href="group__CO__HBconsumer.html#ga6c9bd0df815428719b9f9429ed4476a9">More...</a><br /></td></tr>
<tr class="separator:ga6c9bd0df815428719b9f9429ed4476a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaef359610a0cdd1331da266be9c55c2d2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#gaef359610a0cdd1331da266be9c55c2d2">CO_HBconsumer_initCallbackTimeout</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, void *object, void(*pFunctSignal)(<a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> nodeId, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, void *object))</td></tr>
<tr class="memdesc:gaef359610a0cdd1331da266be9c55c2d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Heartbeat consumer timeout callback function.  <a href="group__CO__HBconsumer.html#gaef359610a0cdd1331da266be9c55c2d2">More...</a><br /></td></tr>
<tr class="separator:gaef359610a0cdd1331da266be9c55c2d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8758a7bd92aa458b90d5da9221cc694f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga8758a7bd92aa458b90d5da9221cc694f">CO_HBconsumer_initCallbackRemoteReset</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, void *object, void(*pFunctSignal)(<a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> nodeId, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, void *object))</td></tr>
<tr class="memdesc:ga8758a7bd92aa458b90d5da9221cc694f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize Heartbeat consumer remote reset detected callback function.  <a href="group__CO__HBconsumer.html#ga8758a7bd92aa458b90d5da9221cc694f">More...</a><br /></td></tr>
<tr class="separator:ga8758a7bd92aa458b90d5da9221cc694f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29e01b5fe6392ce688e8ac57d966258f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga29e01b5fe6392ce688e8ac57d966258f">CO_HBconsumer_process</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#ga449976458a084f880dc8e3d29e7eb6f5">bool_t</a> NMTisPreOrOperational, <a class="el" href="group__CO__dataTypes.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> timeDifference_us, <a class="el" href="group__CO__dataTypes.html#ga33594304e786b158f3fb30289278f5af">uint32_t</a> *timerNext_us)</td></tr>
<tr class="memdesc:ga29e01b5fe6392ce688e8ac57d966258f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process Heartbeat consumer object.  <a href="group__CO__HBconsumer.html#ga29e01b5fe6392ce688e8ac57d966258f">More...</a><br /></td></tr>
<tr class="separator:ga29e01b5fe6392ce688e8ac57d966258f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga041b92d6feb1774cb7eb87fba842fdf2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__CO__dataTypes.html#gaef44329758059c91c76d334e8fc09700">int8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga041b92d6feb1774cb7eb87fba842fdf2">CO_HBconsumer_getIdxByNodeId</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> nodeId)</td></tr>
<tr class="memdesc:ga041b92d6feb1774cb7eb87fba842fdf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the heartbeat producer object index by node ID.  <a href="group__CO__HBconsumer.html#ga041b92d6feb1774cb7eb87fba842fdf2">More...</a><br /></td></tr>
<tr class="separator:ga041b92d6feb1774cb7eb87fba842fdf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c5d4eccbcb0f1f8965a336fde04e765"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__CO__HBconsumer.html#ga7658e41b7c045b7b612e4ef8a2b663f3">CO_HBconsumer_state_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga7c5d4eccbcb0f1f8965a336fde04e765">CO_HBconsumer_getState</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx)</td></tr>
<tr class="memdesc:ga7c5d4eccbcb0f1f8965a336fde04e765"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current state of a heartbeat producer by the index in OD 0x1016.  <a href="group__CO__HBconsumer.html#ga7c5d4eccbcb0f1f8965a336fde04e765">More...</a><br /></td></tr>
<tr class="separator:ga7c5d4eccbcb0f1f8965a336fde04e765"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1731e3860fce5ca5d341d9b7fc32d8d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__CO__dataTypes.html#gaef44329758059c91c76d334e8fc09700">int8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__CO__HBconsumer.html#ga1731e3860fce5ca5d341d9b7fc32d8d6">CO_HBconsumer_getNmtState</a> (<a class="el" href="structCO__HBconsumer__t.html">CO_HBconsumer_t</a> *HBcons, <a class="el" href="group__CO__dataTypes.html#gaba7bc1797add20fe3efdf37ced1182c5">uint8_t</a> idx, <a class="el" href="group__CO__NMT__Heartbeat.html#ga1e8c2a6c0fd4a33183503d25a7c6d744">CO_NMT_internalState_t</a> *nmtState)</td></tr>
<tr class="memdesc:ga1731e3860fce5ca5d341d9b7fc32d8d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current NMT state of a heartbeat producer by the index in OD 0x1016.  <a href="group__CO__HBconsumer.html#ga1731e3860fce5ca5d341d9b7fc32d8d6">More...</a><br /></td></tr>
<tr class="separator:ga1731e3860fce5ca5d341d9b7fc32d8d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>CANopen Heartbeat consumer protocol. </p>
<dl class="section author"><dt>Author</dt><dd>Janez Paternoster </dd></dl>
<dl class="section copyright"><dt>Copyright</dt><dd>2004 - 2020 Janez Paternoster</dd></dl>
<p>This file is part of CANopenNode, an opensource CANopen Stack. Project home page is <a href="https://github.com/CANopenNode/CANopenNode">https://github.com/CANopenNode/CANopenNode</a>. For more information on CANopen see <a href="http://www.can-cia.org/">http://www.can-cia.org/</a>.</p>
<p>Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at </p><pre class="fragment">http://www.apache.org/licenses/LICENSE-2.0
</pre><p>Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. </p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_f17b92000dd778003adbbcb6b5ce4226.html">301</a></li><li class="navelem"><a class="el" href="CO__HBconsumer_8h.html">CO_HBconsumer.h</a></li>
    <li class="footer">Generated on Sat Sep 19 2020 10:03:20 for CANopenNode by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
  </ul>
</div>
</body>
</html>
